CXX = g++
CXXFLAGS = -std=c++17 -I../third_party
SRCS = main.cpp
OBJS = $(SRCS:.cpp=.o)
TARGET = server

all: $(TARGET)

$(TARGET): $(OBJS) hot_manager.o breakpoint_manager.o
	$(CXX) $(CXXFLAGS) -o $@ $^

hot_manager.o: hot_manager.h
	$(CXX) $(CXXFLAGS) -c hot_manager.h -o hot_manager.o

breakpoint_manager.o: breakpoint_manager.h
	$(CXX) $(CXXFLAGS) -c breakpoint_manager.h -o breakpoint_manager.o

%.o: %.cpp
	$(CXX) $(CXXFLAGS) -c $< -o $@

clean:
	rm -f *.o $(TARGET) 